package com.graph.base;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

public interface VertexInterface extends Comparable{

	public void visit();

	public void unVisit();

	public boolean isVisited();

	public void addEdgeBetweenness(String name,Integer weight);
	
	public String getName();

	public boolean connect(VertexInterface endVertex, Integer edgeWeight);

	public boolean connect(VertexInterface endVertex);

	public Iterator<VertexInterface> getNeighborInterator();

	public Iterator<Edge> getWeightIterator();

	public boolean hasNeighbor();// 查看顶点是否最少有一个邻接点

	public VertexInterface getUnvisitedNeighbor();

	public void setCost(double i);

	double getCost();

	public List<Edge> getEdgeList();

	Boolean getIsCentralNodes();

	void setIsCentralNodes(Boolean isCentralNodes);

	Integer getReNumber();

	void setReNumber(Integer reNumber);

	void setDegree(Integer degree);

	Integer getDegree();

	double getDensity();

	void setDensity(double density);

	boolean isSelected();

	void setSelected(boolean isSelected);

	void setNeighors(Set<VertexInterface> neighors);

	Set<VertexInterface> getNeighors();



}